package com.radiant.data.entity;

import java.util.ArrayList;
import java.util.List;

import javax.xml.bind.annotation.XmlRootElement;

import com.radiant.data.annotation.Entity;
import com.radiant.data.annotation.Persist;

@XmlRootElement
@Entity(name="User")
public class User {
	
	@Persist(name="userId", itemName=true)
	private String userId;

	@Persist(name="userName")
	private String userName;

	@Persist(name="password")
	private String password;

	@Persist(name="profile")
	private Profile profile;

	@Persist(name="friends", multiValue=true, multiValueType=User.class, complex=true)
	private List<User> friends = new ArrayList<User>();

	@Persist(name="children", multiValue=true, multiValueType=Child.class, complex=true)
	private List<Child> children = new ArrayList<Child>();

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public Profile getProfile() {
		return profile;
	}

	public void setProfile(Profile profile) {
		this.profile = profile;
	}

	public List<User> getFriends() {
		return friends;
	}

	public void setFriends(List<User> friends) {
		this.friends = friends;
	}

	public List<Child> getChildren() {
		return children;
	}

	public void setChildren(List<Child> children) {
		this.children = children;
	}
	
}
